---
title: Umaru Chat
date: 2020-09-19
description: A realtime chat app made with React, Firebase, and Typescript
source: https://github.com/elianiva/umaru-chat
type: personal
stack:
    - ["React", "https://reactjs.com"]
    - ["Typescript", "https://typescriptlang.org"]
    - ["Firebase", "https://firebase.google.com"]
---

**Umaru Chat** is a chat app that I made to push my skillset further. I never made a fullstack app before and barely know about backend stuff so what I ended up doing is using BaaS (Backend as a Service) which is Firebase. I also want to try to make a React app using Typescript. Honestly, I proud that I'm able to make this app but at the same time I'm not really proud of this app because it's my first time and obviously the code is a mess.

I don't know the type definition for Firebase so I used `any` which should be avoided when using Typescript. I don't follow any tutorial (which I probably should), I just google stuff up if I got confused and just slapp dem code with the solution that I found from the internet.

There's some issue with this app which is if you don't leave the room using the **quit** button then the usercount for the room won't go down. I have experienced enough pain that I don't want to touch this app ever again.

Basic chatting feature works though, so it's not a broken app. The reason why I chose the name **Umaru Chat** is because I saw Umaru-chan when I was randomly scrolling twitter and thought "aight, that'll be my chatapp name". As you may or may not have known, I can't choose a good name for _anything_.
